第17話 データと構造について
エヌ・ケイ・カスタマイズの沖田でございます。今回は、データと構造について、改めて考えていきましょう。
以下の記事は、FileMaker Master Book 初級編(バージョン 19 対応)より、
Claris FileMaker 公式トレーニング教材
「第7章 データと構造(140ページ)~」を元に掲載しています。
この文献から、データベースの構造についてどのようにして決めていくかについて学びました。文献の執筆者、関係者の方々に深謝いたします。
なお、このブログ記事の趣旨は、弊社所属スタッフの FileMaker 学習の成果を公開することを目的とし、同時に、参考文献の内容の紹介に資するものであることを Claris International Inc. が確認しています。
構造につきまして、基本的な部分は以下になります。
・ファイルの数
ソリューションを作成するのに最低、1つは必須です。
今後、分離モデルや大規模なシステムを扱うようになると、複数の場合もあります。
・テーブルの数
1 つ以上を必要に応じてつくります。1 ファイルにテーブルは、ほとんど無限に作成できます。
・フィールドの数
フィールドは必ずテーブルに作成され、フィールドの数は、1テーブルに対してほとんど無限に作成可能。
・リレーションシップ
必要に応じてつくります。1 ファイルにほとんど無限に作成できます。
データベースの構造のことを「スキーマ」と呼ぶことがあります。フィールドスキーマとは、フィールドの名前やオプションも含めて定義されている一式と思ってください。フィールドに入力されているデータは含まれません。
リレーションシップについてもう少し確認していきます。
「リレーションシップ=関連」はテーブルとテーブルの間に「関連付け」(「定義」)をおこなうことです。関連付けの定義は[データベースの管理]ダイアログの「リレーションシップ」タブでおこないます。
関連付けはフィールドを使っておこないます。そのフィールドを「照合フィールド」と呼びます。そして、あるテーブルに関連付けられているテーブルを「関連テーブル」と呼びます。リレーションシップに基づいて作成されたレコードは「関連レコード」です。さらにリレーションシップを使ってレイアウトや機能を作成します。
例えば次のような内容でリレーションシップを定義します。
・ あるテーブルのフィールドのデータと、他のテーブルのフィールドのデータを「照合」したとき「共通の値(=)」だったら関連がある。条件の指定は、(=)以外にも様々な種類があります。
関連レコードについても、もう少し確認していきます。
関連テーブルのレコードがリレーションシップの定義による照合の結果、条件に合致して『関連あり』とされれば、それが「関連レコード」です。つまり、関連テーブルに入力されているすべてのレコードが必ず関連レコードになるわけではありません(関連でないものは「非関連○○」と呼ばれます)。
参照先と参照元
リレーションシップでは、どの立場から見るかによってテーブルが次のように呼び分けられます。
例えば、以下の図に置いて、「タスク」テーブルから「添付ファイル」テーブルのデータを見るとき、
・「タスク」テーブルが参照元
・「 添付ファイル」テーブルが参照先
となります。カスタムApp の作成作業では『どの参照元から参照先を見ているのか』が、とても重要です。いま作業しているテーブルを参照元として、参照先のテーブルと関連レコードになにが表示されるはずなのかを意識して作業をおこないます。
「タスク」テーブルから「添付ファイル」テーブルは(=)が照合の条件となっていますので、「タスク」テーブルの赤枠で囲まれている主キーの値が32のレコードに関連する「添付ファイル」テーブルのレコードは、同じく赤枠で囲まれている外部キーの値が32の2レコードになります。
今回はここまでになります。
次回は、リレーションシップで表示される枠の説明、またレイアウトとデータの関係性について話をしていきたいと思います。
よろしくお願い致します。
参考文献:Claris FileMaker 公式トレーニング教材 から、「FileMaker Master Book 初級編」 等を参考にしています
https://content.claris.com/fmb19_reg-ja